package com.celeritymq.server.servers;

import java.io.Serializable;
import java.rmi.Remote;
import java.rmi.RemoteException;

import javax.jms.Message;

import com.celeritymq.destination.CelerityQueue;
import com.celeritymq.destination.CelerityTemporaryQueue;

public interface QueueManager extends Remote,Serializable{
	
	void addQueueMessage(CelerityQueue queue,Message message)throws RemoteException;
	
	void addTemporaryQueueMessage(CelerityTemporaryQueue queue,Message message)throws RemoteException;
	
	void sendToReceiver(CelerityQueue queue,Message message)throws RemoteException;
	
	void sendToTemporaryReceiver(CelerityTemporaryQueue queue,Message message)throws RemoteException;
	
	void setMQServer(MQServer server);
}